package com.sg.dto.biz.component.req;

import com.sg.common.dto.BaseDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * @desc IssueOffcialDocStoryReqDto
 * @使用场景
 */
@Data
public class IssueOffcialDocStoryReqDto
        extends BaseDto
        implements Serializable {

    /**
     * 周期名称
     */
    @ApiModelProperty("周期名称")
    private String cycleStandardName;

    /**
     * 周期开始时间
     */
    @ApiModelProperty("周期开始时间")
    private Date cycleStartTime;

    /**
     * 周期结束时间
     */
    @ApiModelProperty("周期结束时间")
    private Date cycleEndTime;

    /**
     * 数量
     */
    @ApiModelProperty("数量")
    private Long acount;

    /**
     * 周期类型名称
     */
    @ApiModelProperty("周期类型名称")
    private String cycleTypeName;

    /**
     * 周期类型标识
     */
    @ApiModelProperty("周期类型标识")
    private String cycleTypeCode;

    /**
     * 目标内容名称
     */
    @ApiModelProperty("目标内容名称")
    private String targetContentName;

    /**
     * 开始周期名称
     */
    @ApiModelProperty("开始周期名称")
    private String cycleStartName;

    /**
     * 结束周期名称
     */
    @ApiModelProperty("结束周期名称")
    private String cycleEndName;

    /**
     * 分工内容类型编码 EQUATIVE_DEPT:同级部门 DEPT_TYPE:部门类型 PRESENT_DEPT:当前部门
     */
    @ApiModelProperty("分工内容类型编码")
    private String divisionContType;

    /**
     * 向下分工层级编码 DEPT_END:部门结束 PUISNE_DEPT_END:下属部门结束 DEPT_PUISNE_STAFF_END:部门下属人员结束 PUISNE_DEPT_STAFF_END:下属部门人员结束
     */
    @ApiModelProperty("向下分工层级编码")
    private String encode;

    /**
     * 编码名称
     */
    @ApiModelProperty("编码名称")
    private String codeName;

    /**
     * 分工内容名称
     */
    @ApiModelProperty("分工内容名称")
    private String divisionContName;

    /**
     * 系统当前时间
     */
    @ApiModelProperty("系统当前时间")
    private Date systemDateTime;

    /**
     * 随机数位数
     */
    @ApiModelProperty("随机数位数")
    private Long randomNumberDigits;

    /**
     * 空间名称
     */
    @ApiModelProperty("空间名称")
    private String spaceName;

    /**
     * 指标简称
     */
    @ApiModelProperty("指标简称")
    private String objectiveShortName;

    /**
     * 目标周期简称
     */
    @ApiModelProperty("目标周期简称")
    private String cyclelAlias;

    /**
     * 真实姓名
     */
    @ApiModelProperty("真实姓名")
    private String idCardName;

    /**
     * 组内职务名称
     */
    @ApiModelProperty("组内职务名称")
    private String virtualOrganizationPosition;

    /**
     * 修订主体内容
     */
    @ApiModelProperty("修订主体内容")
    private String reviseSubjectContent;

    /**
     * 修订行为名称
     */
    @ApiModelProperty("修订行为名称")
    private String reviseBehaviorName;

    /**
     * 变更后字段中文内容
     */
    @ApiModelProperty("变更后字段中文内容")
    private String columnContent;

    /**
     * 目标周期名称
     */
    @ApiModelProperty("目标周期名称")
    private String targetCycleName;

    /**
     * 任务名称
     */
    @ApiModelProperty("任务名称")
    private String taskName;

    /**
     * 空间简称
     */
    @ApiModelProperty("空间简称")
    private String abbreviation;

    /**
     * 自定义字段1
     */
    @ApiModelProperty("自定义字段1")
    private String customField1;

    /**
     * 自定义字段2
     */
    @ApiModelProperty("自定义字段2")
    private String customField2;

    /**
     * 父子中周期类型 PARENT_CYCLE:父周期 MID_CYCLE:中期 SUB_CYCLE:子周期 PROCESS_CYCLE:过程周期
     */
    @ApiModelProperty("父子中周期类型")
    private String parentSubMidCycleType;

    /**
     * 自定义字段3
     */
    @ApiModelProperty("自定义字段3")
    private String customField3;

    /**
     * 通用主键ID
     */
    @ApiModelProperty("通用主键ID")
    private String commPrimaryKey;

    /**
     * 冗余评价模板ID
     */
    @ApiModelProperty("冗余评价模板ID")
    private String evaluationTemplateId;

    /**
     * 内容表主键ID
     */
    @ApiModelProperty("内容表主键ID")
    private String entityId;

    /**
     * 实际值（数值）
     */
    @ApiModelProperty("实际值（数值）")
    private Double actualValue;

    /**
     * 达成度（数值）
     */
    @ApiModelProperty("达成度（数值）")
    private Double reach;

    /**
     * 较上次目标增降幅
     */
    @ApiModelProperty("较上次目标增降幅")
    private Double fromLastTargetLiftRatio;

    /**
     * 进度较上次增降幅
     */
    @ApiModelProperty("进度较上次增降幅")
    private Double progressFromLastRatio;

    /**
     * 达成度较上次增降幅
     */
    @ApiModelProperty("达成度较上次增降幅")
    private Double actualFromLastTimeRatio;

    /**
     * 进度值（数值）
     */
    @ApiModelProperty("进度值（数值）")
    private Double progressValue;

    /**
     * 实际得分（数值）
     */
    @ApiModelProperty("实际得分（数值）")
    private Double actualScoreValue;

    /**
     * 实际得分较上次增降幅（数值）
     */
    @ApiModelProperty("实际得分较上次增降幅（数值）")
    private Double fromLastRatioActualScore;

    /**
     * 汇报得分（数值）
     */
    @ApiModelProperty("汇报得分（数值）")
    private Double reportScoreValue;

    /**
     * 汇报得分较上次增降幅（数值）
     */
    @ApiModelProperty("汇报得分较上次增降幅（数值）")
    private Double fromLastRatioReportScore;

    /**
     * 实际值单位 TIMES:次 DOOR:门 PART:部 SET:套 INDIVIDUAL:个 YUAN:元 NNT:人 PIECE:篇 TERM:项 FEN:分 WAN_YUAN:万元 PERCENT:百分率 PORTION:份 %:%
     */
    @ApiModelProperty("实际值单位")
    private String actualValueUnit;

    /**
     * 进度值单位
     */
    @ApiModelProperty("进度值单位")
    private String progressValueUnit;

    /**
     * 达成度单位
     */
    @ApiModelProperty("达成度单位")
    private String reachUnit;

    /**
     * 对象名称
     */
    @ApiModelProperty("对象名称")
    private String objectName;

    /**
     * 汇报得分单位 TIMES:次 DOOR:门 PART:部 SET:套 INDIVIDUAL:个 YUAN:元 NNT:人 PIECE:篇 TERM:项 FEN:分 WAN_YUAN:万元 PERCENT:百分率 PORTION:份 %:%
     */
    @ApiModelProperty("汇报得分单位")
    private String reportScoreUnit;

    /**
     * 绑定手机
     */
    @ApiModelProperty("绑定手机")
    private String phone;

    /**
     * 应用ID
     */
    @ApiModelProperty("应用ID")
    private String appId;

    /**
     * 验证码
     */
    @ApiModelProperty("验证码")
    private String verificationCode;

    /**
     * 责任主体名称
     */
    @ApiModelProperty("责任主体名称 ")
    private String dutyBodyName;

    /**
     * 部门简称
     */
    @ApiModelProperty("部门简称")
    private String deptShortName;

    /**
     * 通用数值字段（整数型）
     */
    @ApiModelProperty("通用数值字段（整数型）")
    private Long comNumField;

    /**
     * 汇报任务审核驳回原因
     */
    @ApiModelProperty("汇报任务审核驳回原因")
    private String reportTaskRejectReason;

    /**
     * 身份人员ID
     */
    @ApiModelProperty("身份人员ID")
    private String originalRoleMemberId;

    /**
     * 目标内容标题名称
     */
    @ApiModelProperty("目标内容标题名称")
    private String targetContentTitleName;

}
